package com.ozo.cloud.gen.pojo.dto;

import com.ozo.cloud.common.base.model.BaseValidDTO;
import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.NotNull;
import lombok.Data;

import java.io.Serial;
import java.io.Serializable;

/**
 * <p>
 * 字段类型映射保存对象
 * </p>
 *
 * @author qiangesoft
 * @date 2024-03-13
 */
@Schema(description = "字段类型映射保存对象")
@Data
public class GenColumnMapSaveDTO implements Serializable {

    @Serial
    private static final long serialVersionUID = 1L;

    @NotNull(message = "不能为空", groups = BaseValidDTO.edit.class)
    @Schema(description = "id")
    private Long id;

    @NotBlank(message = "数据库类型不能为空")
    @Schema(description = "数据库类型")
    private String dbType;

    @NotBlank(message = "字段类型不能为空")
    @Schema(description = "字段类型")
    private String columnType;

    @NotBlank(message = "Java类型不能为空")
    @Schema(description = "Java类型")
    private String javaType;

    @NotBlank(message = "Java类型包路径不能为空")
    @Schema(description = "Java类型包路径")
    private String javaTypePackage;

    @NotBlank(message = "页面组件类型不能为空")
    @Schema(description = "页面组件类型")
    private String htmlType;

}
